package com.mybatis_stu.service;

import com.mybatis_stu.pojo.PageBean;
import com.mybatis_stu.pojo.Result;
import com.mybatis_stu.pojo.Student;
import com.mybatis_stu.pojo.StudentPageRequest;
import org.springframework.stereotype.Service;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;

import java.util.List;

/**
 * @Package com.mybatis_stu.service
 * @Date 2024/12/15 21:27
 */
@Service
public interface StudentService {
    /**
     * 新增学生
     * */
    void add(Student student);


    /**
     * 批量删除学生
     * */
    void delete(List<Integer> ids);


    /**
     *修改学生
     * */
    void update(Student student);

    /**
     *带条件的分页查询（5分）
     * ① 输入 学员姓名 进行搜索，支持模糊查询。
     * ② 选择 学员最高学历 进行搜索， 精确查询。
     * ③ 选择 学员所属班级 进行查询，精确查询。
     * ④ 输入 学号 进行查询 ， 支持模糊查询。
     * */
    /**
     * 条件分页查询
     * @param page     页码
     * @param pageSize 每页展示记录数
     * @param name     姓名
     * @param educationId   最高学历
     * @param classId   班级ID
     * @param number     学生号码
     * @return
     */
    PageBean page(Integer page, Integer pageSize, String name,Integer educationId,Integer classId,String number);


    /**
     *学员违纪处理（5）
     * ① 每一次违纪处理 , 就需要将违纪次数往上累加一次 。
     * ② 每一次违纪处理 , 需要将违纪分数累加。
     * */
    /**
     * 处理学生违纪
     * @param studentId 学生ID
     * @param score 扣分分数
     */
    void discipline(Integer studentId, Integer score);
}
